package edu.ensabap.matricula.dao;

import java.util.HashMap;
import java.util.List;
import java.util.Map;

import javax.sql.DataSource;

import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.jdbc.core.JdbcTemplate;
import org.springframework.jdbc.core.namedparam.NamedParameterJdbcTemplate;
import org.springframework.jdbc.core.simple.SimpleJdbcTemplate;
import org.springframework.stereotype.Repository;

import edu.ensabap.matricula.bean.Ejemplo1;
import edu.ensabap.matricula.constants.PgQuerys;
import edu.ensabap.matricula.constants.RowMapperConstants;


@Repository
public class Ejemplo1DAO {
	
	private SimpleJdbcTemplate simpleJdbcTemplate;
    private JdbcTemplate jdbcTemplate;
	private NamedParameterJdbcTemplate namedParameterJdbcTemplate;
	
	@Autowired
	public void init(DataSource dataSource) {
		this.simpleJdbcTemplate = new SimpleJdbcTemplate(dataSource);
		this.jdbcTemplate=new JdbcTemplate(dataSource);
		this.namedParameterJdbcTemplate=new NamedParameterJdbcTemplate(dataSource);
	}
	
	
	
	
	
	
//	funcion que agrega
	public int insertar(Ejemplo1 e){
			
		String  sql = PgQuerys.insertarEjemplo;
		
		Map<String, Object> parametros = new HashMap<String, Object>();
		parametros.put("id", e.getId());
		parametros.put("name", e.getName());
		
		return this.simpleJdbcTemplate.update(sql, parametros);
		
		
	}
	
	
//	funcion que loista los alumno
	public List<Ejemplo1> listar(Ejemplo1 e){
		
		String sql = PgQuerys.listar_Ejemplo;
		
		
		return this.jdbcTemplate.query(sql, new RowMapperConstants.Ejemplo1MApper());
		
		
		
	}
	
}
